You'll need a dedicated server to support many members.
If you're a good programmer, you might be able to use a max of 4kb of data to transfer between the server and the player.
4kb seems alot, but I'll explain later why I say 4kb.
If you have 4kbyte of data, you have 4x8=32 kbit of data.
If you have a good ADSL conncetion, you usually have 1 Mbit upload. 1 Mbit is 1024kBit.
If you were to allow your entire upload stream to be used, you would be able to host: 1024/32 = 32 users. Unfortunatelly, you won't be able to get a constant 1024 upload stream. (yes, they promise you to get it, but usually you get between 600~800kbit. Lets assume you can have 800. You'd get 800/32 = 25 users max.
Now obviously, you'd not sacrefise your entire upload stream for this. Even if you have a good connection, it is unlikelly you'll give up that much for a game like this. Not to mention, that at that point you'll be going to put your pc online all the time, otherwise people cannot connect.
Seriously, unless you have a dedicated server (which costs alot of money) this is a no-go for a MMO.
Now, I mentioned earlier why you'd need atleast 4kb of data.
4kb of data is 4096 characters in one transmission.
Sending out data to the server is not a problem, but unluckelly, thats not the place where alot of information is being send. Its the receiving part that has the problem.
When you send your data, you'll be sending your location along with an identifier for your player. The server needs to know who you are so it can update your location in its map.
It will then send back what is happening around you. (sending every data would be a bandwidth killer anyway)
Say, there are 10 users in the same screen as you, the server would be sending you their locations and their names.
Depending on wether you're going to store the world on the server or on the client using updates would also be a role in this.
Lets assume you store the world on the server, the first thing you'd need to transmit, is the screen's layout. (so all the layers and where you can walk etc). This can happen every time you visit a world without getting who's on the screen yet. (this will most likelly also take up 4kb)
Next you'll need to store all the users that are on the screen with their names. You'll need a precise (pixel precise) location of the users along with their names.
So lets say the screen is 600 pixels wide and 240 pixels height, you'd need 2 bytes (256*256) for the width, and 1 byte (256) for the height followed by the name.
Now obviously someone would want to chat too, so if there's a message, we would need to send the message too.
Now, if you add functionality, like: the player is jumping etc, these actions should also be added to this list, so you can make it look more natural and less jagged on the client side. (otherwise, players will appear to warp through the screen rather than walk.
As you see, its not as easy as it looks.